home *** CD-ROM | disk | FTP | other *** search
- SHelp Online-Hilfe zu C-Sourcen mit ST-Guide
- V0.1 31.12.1994
-
- (c) 1994 by Th. Morus Walter
-
- Th. Morus Walter
- Schulstr. 22
- 93080 Pentling
- Tel. 0941/949802
-
- Dieses Programm ist Freeware!
-
- Es darf als Ganzes, d.h. einschließlich der Quellen und dieser Datei,
- beliebig weitergegeben werden.
-
- ---------------------------------------------------------------------------
- D I S C L A I M E R:
- --------------------
- No effort has been made to make this program bugfree.
- USE THIS PROGRAM AT YOUR OWN RISK!
- NO WARRANTY PROVIDED!
-
- Es wurden keinerlei Anstrengungen unternommen, um diese Programm
- fehlerfrei zu machen.
- BENUTZEN SIE DIESES PROGRAMM AUF EIGENE GEFAHR!
- KEINE GARANTIE FÜR IRGENDWAS!
-
- Anders gesagt, ich habe das Programm einen Tag lang runtergehackt
- Der Parser ist - besonders in Bezug auf Funktionsdefinitionen -
- nicht besonders gelungen :-(
- Ich habe das Programm an meinen Quelltexten getestet aber ich garantiere
- für nichts. (Da die Quellen nur gelesen werden, sollte es aber zu keinen
- schwerwiegenderen Problemen als schlimmstenfalls einfachen Abstürzen
- kommen)
-
- ---------------------------------------------------------------------------
-
-
- Sourcen:
- --------
- Die Sourcen zu Shelp dürfen unter den folgenden Bedingungen weitergegeben,
- verändert und/oder ganz oder teilweise für eigene Programme verwendet werden:
-
- 1. Weitergabe ist nur vollständig und mit dieser Datei erlaubt
- 2. Veränderte Versionen von Shelp dürfen nur weitergegeben werden,
- wenn hinreichend deutlich gemacht wird, daß die Programme verändert
- wurden.
- Änderung des Namens, Hinweise in der Dokumentation, im Programm...
- Es muß in geeigneter Weise auf die ursprüngliche Urheberschaft der
- Programme hingewiesen werden.
- 3. die Übernahme von Programmteilen in eigene Programme ist erlaubt.
- Dabei muß in geeigneter Weise auf die Verwendung meiner Routinen
- und deren Urheber verwiesen werden.
- 4. die obigen Festlegungen sind nicht wörtlich sondern ihrem Sinne
- entsprechend (was natürlich letztenendes umfassender ist) zu
- befolgen
- (kurz: geht anständig mit meinen Quellen um)
-
- ACHTUNG!
- Der Autor übernimmt keinerlei Haftung für irgendwelche Schäden.
- Eventuelle Fehler sind das Risiko derer, die die Sourcen verwenden.
-
- ---------------------------------------------------------------------------
-
- ausführliche Beschreibung:
- --------------------------
- RTFS
-
- ---------------------------------------------------------------------------
-
- Kurzbeschreibung:
- -----------------
-
- SHelp erzeugt einen ST-Guide Hypertext (genauer: dessen Quelle), der die
- Funktionen, Typ-Definitionen und Präprozessor-Definitionen von C-Quelltexten
- enthält.
-
- Anmerkungen:
- - jede Funktion, jeder definierte Typ und jede #define Anweisung wird
- in einer eigenen Seite des Hypertextes angezeigt.
- Die Seite hat als Titel den Namen der Funktion...
- Sie beginnt mit der Angabe der Quelldatei und der Zeile, wobei der
- Name der Datei einen Link auf diese (mit Berücksichtigung der Zeile)
- darstellt.
- Es folgt der Text der Funktions-, Typ- oder Präprozessor-Definition.
- Bei Funktionsdefinitionen wird alles vom Anfang der Funktionsdefinition
- bis zum '{', mit dem der Text der Funktion beginnt, ausgegeben,
- einschließlich Kommentare. Bei #define Anweisungen wird mindestens die
- ganze Zeile ausgegeben, beginnt in ihr ein Kommentar, so wird dieser
- ganz übernommen. Typdefinitionen werden vom 'typedef' bis zum Ende
- der Typdefinition gelesen. Kommentare (etwa bei Strukturen) werden
- ebenfalls übernommen.
-
- - an den Anfang des Hypertextes wird eine 'database' Zeile geschrieben,
- deren Inhalt man mit der Option '-i' (wie Info) bestimmen kann.
- Ist '-i' nicht angeben, so wird als Database "Online-Hilfe zu C-Sourcen"
- geschrieben. Letzteres ist zur Identifikation natürlich nur mäßig
- geeignet.
-
- - Anschließend wird eine Headerdatei beliebiger Länge und beliebigen
- Inhaltes in den neuen Hypertext kopiert.
- Zweckmäßigerweise enthält diese die üblichen Angaben wie 'author
- 'options' ..., eine Inhaltsseite, eventuell eine Hilfe-Seite usw.
-
- - nach allen Einträgen wird für jede der drei Arten von Einträgen
- eine alphabetisch sortierte Index-Seite erzeugt.
- Die Indexseiten heißen 'Funktionen', 'Typ-Definitionen' und
- 'Präprozessor-Definitionen'.
-
- - es folgt noch eine Liste mit den Quelldateien die verarbeitet wurden
- ('Source-Files').
-
- (HCP erzeugt gegebenfalls noch einen Gesamt-Index mit allen Einträgen)
-
- Doppelte Namen:
- ---------------
- Sind irgendwelche Namen aus irgendwelchen Gründen nicht eindeutig,
- d.h. kommen sie mehrfach vor, so wird wie folgt verfahren:
-
- Haben die doppelten Namen den gleichen Typ (etwa Funktion), so werden
- sie nicht geschrieben, es sei denn man hat die Option '-d' gewählt (s.u.).
- Ist dies der Fall, so wird der erste Eintrag ganz normal geschrieben,
- im zweiten (und allen folgenden) wird der Name des Eintrages durch
- ein '.1' ('.2'...) ergänzt. Damit sind die Einträge im Hypertext eindeutig.
-
- Haben die doppelten Namen verschiedene Typen so wird der erste Name
- wieder normal geschrieben, bei den folgenden der Typ durch '.F', '.T'
- oder '.D' markiert.
-
- Gegebenenfalls wird sowohl eine Typmarkierung wie eine Nummer angehängt,
- die Typmarkierung kommt dann zuerst.
-
- Aufruf des Programmes:
- ----------------------
- shelp [Optionen] File[s]
-
- Optionen:
- -d : doppelte Referenzen jedesmal schreiben (.NR zur Kennung)
- s.o.
-
- -sSIZE: Puffergröße für Namen angeben (in Kbyte), Default: 64
- sdoku verwendet einen statischen Puffer für die Namen. Läuft dieser
- über, so kann man ihn mit -s vergrößern.
- WICHTIG: zwischen -s und der Größenangabe darf KEIN Space stehen
- (also '-s128', NICHT '-s 16')
- Wendet man sdoku nicht gerade auf Headerdateien großer Resourcefiles
- an, so sollte der Default-Wert im allgemeinen reichen.
-
- -bSIZE: Puffergröße für Strukturen/Funktionsköpfe angeben (in Kbyte), Default: 8
- beim Lesen von Strukturen und Funktionsköpfen werden diese zunächst ein
- einen Puffer kopiert (wobei zwei getrennte Puffer existieren). Deren Größe
- ist also die maximal mögliche Größe für Strukturen und Funktionen.
- WICHTIG: zwischen -b und der Größenangabe darf KEIN Space stehen
-
- -hFILE: Headerfile angeben, Default: HEADER.STG
- Name der Headerdatei
- WICHTIG: zwischen -h und der Datei darf KEIN Space stehen
-
- -oFILE: Outputfile angeben, Default: SDOKU.STG
- Name der Ausgabedatei
- WICHTIG: zwischen -h und der Datei darf KEIN Space stehen
-
- -iTEXT: Database angeben, Default: "Online-Hilfe zu C-Sourcen"
- WICHTIG: zwischen -i und dem Text darf KEIN Space stehen
- Anführungszeichen werden von SHelp erzeugt
-
- -f : Funktionsdeklarationen ausgeben
- -t : Typ-Definitionen (typedef) ausgeben
- -p : Präprozessor Definitionen ausgeben
- ist weder -f noch -t noch -p gesetzt, so wird -f -t -p verwendet
- Gibt man einen oder zwei der Parameter '-f', '-t' und '-p' an, so kann
- man sich auf bestimmte Typen beschränken.
-
- Es können beliebig viele Sourcedateien angegeben werden. Überlange
- Kommandozeilen werden nach dem ARGV-Verfahren unterstützt.
-
- Bei Aufruf ohne Parameter und Dateien wird eine Übersicht über die
- Parameter ausgegeben.
-
- Fehler:
- -------
- wenn was schiefgeht, terminiert SHelp unter Ausgabe einer Fehlermeldung.
- Die bisher geschriebene Ausgabe wird NICHT gelöscht.
-
-